using System;
using System.Collections.Generic;
using System.Linq;
using BillsPresentation;
using BillsDomain;
using System.ComponentModel;

namespace BillsTests.Mocks
{
    public class TestView : IPaymentReminderView
    {
        public BindingList<CalendarDay> DaysAndBalances { get; set; }

        public UpcomingPaymentsCollection UpcomingPayments { get; set; }

        public DateTime AsOfDay { get; set; }

        public event EventHandler AsOfDateChanged;

        public event EventHandler<ScheduledPaymentChangedEventArgs> ScheduledPaymentChanged;

        public event EventHandler DeleteClicked;

        public event EventHandler ProjectedBalanceItemsChanged;

        public decimal? CurrentBalance { get; set; }

        public string ProjectedBalance { get; set; }

        public DateTime DateForProjection { get; set; }

        public BindingList<CalendarDay> DatesWithPayments { get; set; }

        public event EventHandler<DateSelectedEventArgs> SpecificDateSelected;

        public IList<Payment> PaymentsForADay { get; set; }

        public DateTime DayOnCalendar { get; set; }

        public event EventHandler Load;

        public event EventHandler FormClose;

        public void RaiseLoad()
        {
            if (this.Load != null)
            {
                this.Load(this, EventArgs.Empty);
            }
        }


        public string PathToData
        {
            get
            {
                throw new NotImplementedException();
            }
            set
            {
                throw new NotImplementedException();
            }
        }

        public string DataFileName
        {
            get
            {
                throw new NotImplementedException();
            }
            set
            {
                throw new NotImplementedException();
            }
        }

        public event EventHandler DataExporting;

        public event EventHandler DataImporting;
    }
}
